const express = require('express')

// 创建express实例
const app = express()

const students = [
	{ name: '张三丰', id: 1 },
	{ name: '张无忌', id: 2 },
	{ name: '张翠山', id: 3 },
]

// 处理预检请求
app.options('/students', (req, res) => {
  // 设置允许的请求源
  res.setHeader('Access-Control-Allow-Origin', 'http://localhost:5173')
  // 设置允许的请求方式
  res.setHeader('Access-Control-Allow-methods', 'GET, POST')
  // 设置允许的请求头
  res.setHeader('Access-Control-Allow-Headers', 'token')
  // 设置预检请求的缓存时间（可选）
  res.setHeader('Access-Control-Max-Age', 7200)
  res.send()
})

// 处理实际请求
app.get('/students', (req, res) => {
  // 设置允许的请求源
  res.setHeader('Access-Control-Allow-Origin', 'http://localhost:5173')
  // 设置自定义响应头
  res.setHeader('abc', '123')
  // 设置允许暴露给客户端的响应头
  res.setHeader('Access-Control-Expose-Headers', 'abc')
  res.send(students)
})

// 开启本地服务器
app.listen('8099', () => {
  console.log('初始化一个node本地服务器，http://127.0.0.1:8099')
})

